Gaming network with remote file system for storing game content

ABSTRACT

Systems and methods provide a mechanism for a gaming machine to access game components on a file system of a file server using a remote file access protocol. The gaming components may include banner content, advertising content, denomination data, pay table, language data, video content, audio content, episodic game data, wagering game software, operating system software, device driver software and device firmware.

RELATED APPLICATIONS

This application claims the priority benefit of U.S. Provisional Application Ser. No. 60/715,885, filed Sep. 9, 2005, the contents of which are incorporated herein by reference.

COPYRIGHT

A portion of the disclosure of this patent document contains material to which the claim of copyright protection is made. The copyright owner has no objection to the facsimile reproduction by any person of the patent document or the patent disclosure, as it appears in the U.S. Patent and Trademark Office file or records, but reserves all other rights whatsoever. Copyright 2005, 2006, WMS Gaming, Inc.

BACKGROUND

Gaming machines may be operated as a stand alone unit, or linked in a network of some type to a group of gaming machines. As technology in the gaming industry progresses, more and more gaming services are being provided to gaming machines via communication networks that link groups of gaming machines to a remote central server computer that provides one or more gaming services. As an example, gaming services that may be provided by the remote computer to a gaming machine via a communication network of some type include player tracking, accounting, cashless award ticketing, lottery, progressive games and bonus games. In addition, gaming machines are evolving into gaming platforms where the gaming services and game play options provided on the gaming machines may be dynamically configured. Thus, the number and type of game services and game play options offered on a particular gaming machine may vary with time.

A gaming entity may operate hundreds, thousands or ten of thousands of gaming machines. Since gaming is allowed in many locations throughout the world, casinos may have games distributed over a wide geographic area. Within casinos, the gaming machines may be connected via one or more dedicated networks. Servers are usually located in a backroom of the casino away from the casino floor.

Current techniques for initially loading, modifying or replacing game software in gaming machines are generally inconvenient, time-consuming, and expensive. In one technique, the entire gaming machine is disconnected from the central server and replaced with a new machine. This involves the shipment of machines to and from a gaming establishment and requires the services of an appreciable number of skilled and semi-skilled service personnel. The service personnel must identify the machines to be replaced, locate the machines on the gaming establishment floor, and then replace the existing machines with the new machines. In another technique, the media containing the software is replaced with new media containing the new software. Again, the service personnel must identify the machines to receive the new software media, locate the machines on the gaming establishment floor, and then replace the existing media with the new media. In this case, media may be a hard disk, flash, various non-volatile media such as EEPROM, EPROM, etc.

The complexity of the problem and the number of potential configurations increases rapidly with the number of gaming machines that are maintained by a gaming establishment. Loading software onto gaming machines thus typically requires significant personnel and hardware resources.

SUMMARY

Systems and methods provide gaming content through a file server communicably coupled to a gaming machine in a gaming machine network. One aspect of the systems and methods includes utilizing a remote file access protocol to access files on a remote file system. The remote file access protocol may be the NFS (Network File System) protocol.

A further aspect of the systems and methods includes authenticating the gaming related files on the remote file system. The authentication may be performed prior to loading the files in the memory of the gaming machine or it may be performed after loading the files in the memory but prior to using the files.

The specification describes systems, methods, and computer-readable media of varying scope. In addition to the aspects and advantages of the embodiments described in this summary, further aspects and advantages of the embodiments of the invention will become apparent by reference to the drawings and by reading the detailed description that follows.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a perspective view of a gaming machine according to an example embodiment.

FIG. 2 is a block diagram of processing components of a gaming machine according to an example embodiment.

FIG. 3 is a block diagram of a network of gaming machines and servers according to an example embodiment.

FIG. 4 is a block diagram of software components of a gaming machine used to access a file server according to an example embodiment.

FIG. 5 is a block diagram of major software components of a gaming machine that may be accessed through a file server according to an example embodiment.

FIGS. 6 and 7 are flowcharts illustrating methods for providing gaming related content to gaming machines according to example embodiments.

DETAILED DESCRIPTION

In the following detailed description of example embodiments of the invention, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration specific example embodiments. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that logical, mechanical, electrical and other changes may be made without departing from the scope of the inventive subject matter.

Some portions of the detailed descriptions which follow are presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the ways used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like. It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussions, terms such as “processing” or “computing” or “calculating” or “determining” or “displaying” or the like, refer to the action and processes of a computer system, or similar computing device, that manipulates and transforms data represented as physical (e.g., electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.

In the Figures, the same reference number is used throughout to refer to an identical component which appears in multiple Figures. Signals and colmections may be referred to by the same reference number or label, and the actual meaning will be clear from its use in the context of the description.

The description of the various embodiments is to be construed as exemplary only and does not describe every possible instance of the inventive subject matter. Numerous alternatives could be implemented, using combinations of current or future technologies, which would still fall within the scope of the claims. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the inventive subject matter is defined only by the appended claims.

FIG. 1 illustrates an example gaming machine 100 in which may be included various embodiments of the invention. In some embodiments, gaming machine 100 is operable to conduct a wagering game. These wagering games may include reel based wagering games such as mechanical or video slots, card based games such as video poker, or other types of wagering games such as video keno, video bingo or a video dice game. If based in video, the gaming machine 100 includes a video display 112 such as a cathode ray tube (CRT), liquid crystal display (LCD), plasma, or other type of video display known in the art. In the illustrated embodiment, the gaming machine 100 is an “upright” version in which the display 112 is oriented vertically relative to a player. Alternatively, the gaming machine may be a “slant-top” version in which the display 112 is slanted at about a thirty-degree angle toward the player. Further, the gaming machine may be a “bar-top” version in which the display is mounted horizontally in a bar top or table top. Still further, the gaming machine may be housed in a wall mounted or other vertically mounted cabinet. In yet further embodiments, the gaming machine may be housed in a portable or handheld device. In such devices, the user interface elements (buttons, screen etc.) may be scaled down or eliminated in order to fit the elements into an appropriate housing for a handheld or portable gaming machine.

The gaming machine 100 may include a plurality of possible credit receiving mechanisms 114 for receiving credits to be used for placing wagers in the game. The credit receiving mechanisms 114 may, for example, include a coin acceptor, a bill acceptor, a ticket reader, and a card reader. The bill acceptor and the ticket reader may be combined into a single unit. The card reader may, for example, accept magnetic cards and smart (chip) cards coded with money or designating an account containing money.

In some embodiments, the gaming machine 100 includes a user interface comprising a plurality of push-buttons 116, and other possible devices. The plurality of push-buttons 116 may, for example, include one or more “bet” buttons for wagering, a “play” button for commencing play, a “collect” button for cashing out, a help” button for viewing a help screen, a “pay table” button for viewing the pay table(s), and a “call attendant” button for calling an attendant. Additional game specific buttons may be provided to facilitate play of the specific game executed on the machine. A touch screen overlaying video display 112 may define touch keys for implementing many of the same functions as the push-buttons. Additionally, in the case of video poker, the touch screen may implement a card identification function to indicate which cards a player desires to keep for the next round. Other possible user interface devices include a keyboard and a pointing device such as a mouse or traclcball.

In some embodiments, gaming machine 100 includes a top box 140. Top box 140 may contain a video display, a mechanical display, or a diorama display that supplements display 112. For example, the display in top box 140 may be a wheel such as a rotating wheel, mechanical dice, a board for a board game, or other such display.

A processor controls operation of the gaming machine 100. In some embodiments, the processor controls the presentation of a wagering game upon which monetary value may be wagered. In response to receiving a wager and a command to initiate play, the processor randomly selects a game outcome from a plurality of possible outcomes and causes the display 112 to depict indicia representative of the selected game outcome. In the case of slots for example mechanical or simulated slot reels are rotated and stopped to place symbols on the reels in visual association with one or more pay lines. If the selected outcome is one of the winning outcomes defined by a pay table, the CPU awards the player with a number of credits associated with the winning outcome.

In some embodiments, gaming machine 100 may include signage 120. Signage 120 may be a display device capable of displaying advertising, gaming information (e.g. type of game, denomination of game etc.) or other information to a player or potential player.

FIG. 2 is a block diagram of a control system 200 suitable for operating the gaming machine 100. Money/credit detector 222 signals a processor 220 when a player has inserted money, tickets, tokens, cards or other mechanism for obtaining credits for plays on the gaming machine through credit mechanisms 114. Using a button panel 116 and/or a touch screen 218, the player may select any variables associated with the wagering game and place his/her wager to purchase a play of the game. In a play of the game, the processor 220 generates at least one random event using a random number generator (RNG) and provides an award to the player for a winning outcome of the random event. Alternatively, the random event may be generated by a remote computer using an RNG or pooling schema and then transmitted to the gaming machine. The processor 220 operates the display 112 to represent the random event(s) and outcome(s) in a visual form that can be understood by the player. In addition to the processor 20, the control system may include one or more additional slave control units for operating the display 112 and any secondary displays.

System memory 224 stores control software, operational instructions and data associated with the gaming machine. In some embodiments, the system memory 224 comprises a separate read-only memory (ROM) and battery-backed random-access memory (RAM). However, it will be appreciated that the system memory 224 may be implemented on any of several alternative types of memory structures or may be implemented on a single memory structure. For example, memory 224 may comprise multiple banks of volatile or non-volatile memory, including RAM, compact flash, hard drives, CD-ROM drives, DVD-ROM drives and combinations thereof.

A payoff mechanism 226 is operable in response to instructions from the processor 220 to award a payoff to the player. The payoff may, for example, be in the form of a number of credits. The number of credits is determined by one or more math tables stored in the system memory 224. As noted above with respect to FIG. 1, the payoff mechanism may be a coin hopper, a ticket printer, a magnetic card writer, or a database update mechanism that updates a database maintaining account information.

Network interface 228 operates to communicably couple system 200 in gaming machine 100 to a network. The network may be any type of wired or wireless network and the network interface 228 may vary based on the type of network. In some embodiments, the network comprises a gaming establishment network such as a LAN (local area network). In alternative embodiments, the network may be an intranet linking multiple networks, for example, the networks of a gaming enterprise that operates multiple gaming establishments. In further alternative embodiments, the network may comprise the Internet.

In some embodiments, the system 224 includes a location detector 230 that may be used to determine the location of the gaming machine. In some embodiments, location detector 230 may be a GPS (Global Positioning System) based detector. In alternative embodiments, the location detector may be a passive or active RFID (Radio Frequency Identification) detector or emitter. In further alternative embodiments, the location detector may be a signal strength measuring system that determines the distance of the gaming machine from a wireless access point based on the strength of a signal emanating from the access point.

FIG. 3 is a block diagram of a network 300 of gaming machines and services according to an example embodiment. In some embodiments, network 300 includes one or more of a name service 302, DHCP (Dynamic Host Configuration Protocol) service 304, filer server 306, and location service 308 all communicably coupled by a network 340. Network 340 may be a wired or wireless network, or a combination of wired and wireless networks. In some embodiments, network 340 is a gaming establishment local area network. In alternative embodiments, network 340 may be a network that links multiple gaming establishments or facilities. In further alternative embodiments, network 340 may include the Internet.

Name service 302 provides a well known location for gaming machine applications and other services to send queries for the network address of services available on gaming network 340. Name service responds to queries with the network address bound to the named service.

DHCP service 304 provides configuration parameters to the DHCP client hosts (e.g. gaming machines 100) requesting information required by the host to participate on network 340. DHCP provides a mechanism for allocation of IP addresses to hosts. In addition, DHCP may be configured to provide the network address of other services (e.g. remote file access services on file server 306). Further information on the operation of DHCP may be found in RFC 2131 (March 1997) and RFC 3315 (July 2003) published by the Internet Engineering Task Force (IETF).

File server 306 provides persistent storage for files that may be accessed by gaming machines 100. In some embodiments, file server 306 is a server system that maintains one or more file systems that may be accessed using a file access protocol. In alternative embodiments, file server 306 may be network attached storage such as a Storage Area Network (SAN).

Location service 308 may provide location information for a gaming machine 100. In some embodiments, location service 308 may provide coordinates used to define whether or not a gaming machine is located within a gaming establishment. For example, location service 308 may provide GPS coordinates that define the boundaries of the gaming establishment. In alternative embodiments, location service 308 may provide coordinates for one or more wireless access points within a gaming establishment. A gaming machine may then used the signal strength from the access point to determine its location in a gaming establishment. In further alternative embodiments, the location service may track RFID based information to determine the location of a gaming machine 100.

It should be noted that services 302-308 may be provided by a single server computer or the services may be distributed across two or more server computers in varying combinations. Further, the services may be provided by other entities on a gaming network, for example by other gaming machines in the network. The inventive subject matter is not limited to a particular location for a service 302-308.

FIG. 4 is a block diagram of software components of a gaming machine 100 that may be used to access a file server 306 according to an example embodiment. In some embodiments, components operating on gaming machine 100 include network operating system 402, authentication module 404, remote file system component 406, local file system component 408 and a local file system 410. Components that may operate on a file server 306 include a file server operating system 422, remote file server component 424 and remote file system 426.

Network operating system 402 may reside in a non-volatile memory of a gaming machine 100, and may execute when the gaming machine in booted or otherwise initialized. In some embodiments, network operating system 402 includes device drivers for network interface 228 and software to execute the BOOTP protocol for loading boot images to the gaming machine 100. The boot image may include an operating system, and may also include authentication module 404, remote file system client component 406, and local file system component 408. In alternative embodiments, network operating system 402 may include a more complete operating system such as the Linux operating system or a version of the Windows operating systems from Microsoft Corporation of Redmond Wash.

Authentication component 404 comprises software that may be used to authenticate software that is run on gaming machine 100, and in particular may be used to authenticate software that resides on remote file system 426. Various forms of authentication may be used, including IPSec (Internet Protocol Security), public/private key combinations, shared private keys, HMAC (keyed Hashing for Message Authentication) etc. Further details on authentication methods used in some embodiments may be found in published United States Patent Application 2003/0195033 entitled “Gaming Software Authentication” and filed Apr. 10, 2002.

Remote file system component 406 comprises software that may be used to access files on a remote file system 426. In some embodiments, remote file system component 406 implements the NFS protocol. In alternative embodiments, remote file system component 406 implements a Novell file sharing protocol. In further alternative embodiments, remote file sharing component implements an Apple VFS protocol.

Local file system 408 provides local storage for files in file system 410 on gaming machine 100. In some embodiments, local file system 410 resides in a non-volatile memory on gaming machine 100. In alternative embodiments, the local file system 410 may be maintained in volatile memory such as RAM.

File server operating system 422 may be Linux, variants of the UNIX operating system, or version of the Windows operating system. Typically file server operating system will be a server class operating system designed to provided file services to client and/or middle tier machines or services.

Remote file server component 424 comprises a server side implementation of a remote file access protocol such as NFS, Novell Netware, or Apple VFS protocols mentioned above. The remote file access protocol provides access to files in remote file system 426. It should be noted that file system 426 is labeled as “remote” reflecting the point of view of the client system (e.g. a gaming machine 100). From the file server's point of view, remote file system 426 is actually a local file system.

Local file system 410 may have at least one directory or folder designated as a mount point 412. During the operation of the system, a directory or folder 428 on remote file system 426 is associated to mount point 412, typically through a “mount” operation known in the all. Once the association is established, references by a gaming machine 100 to files below mount point 412 are actually handled using the remote file access protocol to manipulate files or folders that physically exist at or below folder/directory 428 on remote file system 426.

Further details on the operation of the system are provided below with reference to FIGS. 6 and 7.

FIG. 5 is a block diagram of major software components of a gaming machine 100 that may be accessed through a file server 306 according to an example embodiment. These components may reside on a file server 306 and may be accessible to the gaming machine 100 using a remote file access protocol. In some embodiments, these components include wagering game application 502, game content and data 504-520, operating system 540, device driver 542 and device firmware 550.

Operating system 540 controls the execution of tasks, processes and applications (e.g. wagering game application 502) running on a gaming machine, and provides interfaces between applications and the hardware present on a gaming machine. The operating system may be proprietary to the gaming machine manufacturer or owner, or the operating system may be provided by a third party. Examples of operating systems that may run within the gaming machine environment include the Microsoft Windows family of operating systems, variants of the UNIX operating system, Linux, and real-time operating systems such as VRTX and QNX. The embodiments are not limited to any particular operating system.

Device driver 542 provides a software interface to hardware that may be present on a gaming machine and software that desires to utilize such hardware, such as a wagering game application 502. Typically a device driver is a software component that is added to the operating system software, and must be designed to provide interfaces expected by the operating system. A different device driver 542 typically exists for each type of hardware present on a gaming machine. For example, a ticket printer may have a device driver, a credit acceptor may have a different device driver etc.

Device firmware 550 comprises software that may be downloaded onto a persistent memory resident on a device that may be a component of gaming machine 100. For example, a ticket printer may include an embedded processor that executes software or reads data from firmware on a flash memory resident on the ticket printer. Other devices that are part of gaming machine 100 may also have firmware to control the operation and interface to the device.

Wagering game application 502 comprises software that controls the execution of a wagering game on gaming machine 100. For example, the wagering game application may provide a slot machine application (video or mechanical), keno, card based wagering games (e.g. poker), dice based wagering games or other types of wagering games. The embodiments are not limited to a particular wagering game application.

Wagering game 502 may include one or more data or executable components. These components include denomination data 510, pay table 512, language data 514, video content 516, audio content 518, episode data 520, and configuration data 522. Denomination data 510 includes data that determines the denomination or denominations that the gaming machine uses to determine the amount of a wager. For example, a gaming machine may accept payment for credits in units of $0.25, $0.50, $1.00, $5.00 or other amounts. In addition, denomination data 510 also determines the currency for the wagered amount. For example, the currency may be United States dollars, French francs, Euros or other currency.

Pay table 512 may be used to determine which outcomes are wilming outcomes and the amount to be credited or paid out for the various winning outcomes. Pay table 512 may be a single table in some embodiments. In alternative embodiments, multiple pay tables may be present on a gaming machine and vary depending on which game or game version is currently in use.

Language data 514 comprises one or more data sets or files that contain text to be displayed on the gaming machine. The use of language data 514 allows a wagering game application to display text in the language common the location where the gaming machine is used without requiring customization of the wagering game application.

Video content 516 comprises video data that may be displayed by wagering game application during the course of wagering game play or in an attract mode of the gaming machine. For example, video content may comprise video clips that are displayed to the user during game play, during a bonus round, or while the gaming machine is in attract mode.

Audio content 518 comprises audio data that may be played by the wagering game application during the course of wagering game play, bonus round play, or in an attract mode of the gaming machine. In some embodiments, the audio content may be part of an audio program played on multiple gaming machines to produce a surround-sound effect.

In some embodiments, a portion of video content 516 or audio content 518 may be provided by a gaming establishment and played during game play or in attract mode. This allows the gaming establishment to tailor a gaming machine for their environment. For example, the gaming establishment may desire to provide video or audio content having a theme that is consistent with a theme within the gaming establishment as a whole.

Episode data 520 provides configuration data regarding episodes for a game. In some embodiments, the wagering game may be presented to the user in episodes. For example, bonus rounds may vary depending on the episode, or symbols and characters displayed during game play or game play rules may vary with each episode. Additionally, in some embodiments, some or all of video content 516 and audio content 518 may vary depending on the current episode. Episode data 520 may be used to determine which episode is currently presented to the user.

Configuration data 522 represents other types of configuration data related to the operation of a gaming machine or a group of gaming machines. Examples of such data include the uses for buttons present on the gaming machine.

In addition to wagering game application related configuration elements, a gaming machine may have other types of configuration components. In some embodiments, these components include security data 504, banner content 506 and advertising content 508. Security data 504 may be any type of security data related to the operation of a gaming machine or group of gaming machines. In some embodiments, the security data comprises user identification and/or password data. In alternative embodiments, the security data may comprise public key/private key encryption data. In further alternative embodiments, the security data may comprise key ring data for a group of keys. In still further embodiments, the security data may comprise biometric data. Additionally, the security data may comprise authentication and/or authorization data.

Banner content 506 comprises content intended to be displayed on a secondary display or overhead sign for a gaming machine. The banner content may be displayed on a single gaming machine, or it may be content designed to be displayed as part of the content for multiple gaming machines. For example, the content may be displayed in a manner such that the content appears to travel from one machine to the next. Alternatively, the content may be one portion of a message that is displayed across multiple gaming machines.

Advertising content 508 comprises advertising video, audio, or text data that may be played or displayed on a gaming machine.

Various combinations of the above-described configuration elements may be loaded onto a memory in a gaming machine 100 from a file server 306 using a remote file access protocol. It should be noted that no embodiment requires that all the above-described configuration elements be provided, rather varying embodiments will include varying combinations of one or more of the above-described gaming related components.

FIGS. 6 and 7 are flowcharts illustrating methods for administering a system of gaming machines according to various embodiments of the invention. The methods to be performed by the operating environment constitute computer programs made up of computer-executable instructions. Describing the methods by reference to a flowchart enables one skilled in the art to develop such programs including such instructions to carry out the method on suitable processors for gaming machines (the processor or processors of the computer executing the instructions from computer-readable media). The methods illustrated in FIGS. 6 and 7 are inclusive of acts that may be taken by an operating environment executing an example embodiment of the invention.

FIG. 6 illustrates a method 600 for a gaming machine to access files on a file server. The method begins by determining configuration parameters for the gaming machine (block 602). The configuration parameters may include parameters defining how the gaming machine is to be booted (BOOTP, local memory, etc.) where the gaming machine gets information (DHCP, internal configuration etc.) and other configuration related information.

Next, the gaming machine is booted according to the configuration parameters (block 604). In some embodiments, a network operating system is booted from a local memory such as a non-volatile memory (examples include a boot ROM, flash memory, small hard drive etc.). As noted above, the network operating system may be a limited resource operating system that includes support for a boot protocol such as BOOTP and software to interface with a network device.

Next, the gaming machine determines remote file server parameters (block 606). The remote file server parameters may be provided by making a DHCP query. The response to the DHCP query may include the remote file system type (e.g. NFS, VFS, Novell etc.) and a network address for the file server.

The system then proceeds to mount the remote file system to make the remote file system accessible to the gaming machine (block 608). As noted above, the mount process establishes an association between a local directory on a local file system and a remote directory on a remote file system. After the association, the gaming machine may access remote files as if they were present locally on the gaming machine.

The system then proceeds to load desired gaming related components to the gaming machine (block 610). The gaming components may include operating systems, device drivers, game application components, video components, audio components, pay tables, denomination data, episodic data and any other gaming related data.

In some embodiments, the gaming components residing on a remote file system are authenticated (block 612). The components may be authenticated prior to loading in the gaming machine memory, or they may be authenticated after loading in the gaming machine memory but prior to their use on the gaming machine. As noted above, various forms of authentication may be utilized, including key based authentication (including private, public, shared keys), HMAC authentication, or any other authentication mechanism now known or developed in the future.

FIG. 7 illustrates a method 700 for removing software from a gaming machine according to embodiments of the invention. The method begins by detecting a change in the location of a gaming machine (block 702). In some embodiments, the change may be detected by comparing previous and current coordinates provided by a GPS system. In alternative embodiments, a change in location may be detected by determining that a signal strength between a wireless transceiver on the gaming machine and a wireless access point or router has changed. In further alternative embodiments, a change in location may be detected using an active or passive RFID device. For example, if the gaming machine is moved beyond a doorway also having an active or passive RFID device, the gaming machine may be notified that the location has changed.

If the location has changed, a check is made to determine if the gaming machine is still in an authorized or allowed location. If so, the method returns to block 702 to await the next change in location and the software remains intact on the gaming machine memory.

However, if the gaming machine is no longer in an allowed location (e.g. it has been moved beyond the gaming establishment boundaries or into an unauthorized area of the gaming establishment), the system proceeds to clear the memory of the gaming machine (block 706). Clearing the gaming machine memory may help prevent the unauthorized use of the software, and may also prevent theft of the software.

CONCLUSION

Systems and methods for providing a remote file system for a gaming machine have been described. Although specific embodiments have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that any arrangement which is calculated to achieve the same purpose may be substituted for the specific embodiments shown. This application is intended to cover any adaptations or variations of the inventive subject matter.

The terminology used in this application is meant to include all of these environments. It is to be understood that the above description is intended to be illustrative, and not restrictive. Many other embodiments will be apparent to those of skill in the art upon reviewing the above description. Therefore, it is manifestly intended that the inventive subject matter be limited only by the following claims and equivalents thereof.

The Abstract is provided to comply with 37 C.F.R. §1.72(b) to allow the reader to quickly ascertain the nature and gist of the technical disclosure. The Abstract is submitted with the understanding that it will not be used to interpret or limit the scope of the claims. 

1. A gaming machine comprising: a processor and a memory operable to present a wagering game upon which monetary value may be wagered; a network operating system; and a remote file access module coupled to the network operating system and operable to access one or more files on a remote file system using a remote file access protocol.
 2. The gaming machine of claim 1, wherein the remote file access protocol comprises the NFS (Network File System) protocol.
 3. The gaming machine of claim 1, wherein the remote file system resides on a file server communicably coupled to the gaming machine.
 4. The gaming machine of claim 1, wherein the remote file system resides on a network attached storage unit communicably coupled to the gaming machine.
 5. The gaming machine of claim 4, wherein the network attached storage unit comprises a SAN (storage area network).
 6. The gaming machine of claim 1, further comprising an authentication module coupled to the network operating system and operable to authenticate the one or more files on the remote file system.
 7. The gaming machine of claim 1, wherein the network operating system implements the BOOTP protocol.
 8. The gaming machine of claim 1, wherein the one or more files include content selected from the group consisting of banner content, advertising content, denomination, pay table, language data, video content, audio content, episodic game data, wagering game software, operating system software, device driver software, and device firmware.
 9. A method comprising: providing a gaming machine operable to present a wagering game upon which monetary value may be wagered; determining a network address for a file server communicably coupled to the gaming machine; establishing an association between a mount point on a file system on the gaming machine and a directory on a remote file system on the file server; and loading a file located on the remote file system into a memory of the gaming machine.
 10. The method of claim 9, wherein establishing an association includes establishing an association using an NFS protocol.
 11. The method of claim 9, wherein establishing an association includes establishing an association using a Novell protocol.
 12. The method of claim 9, further comprising authenticating the file located on the remote file system prior to loading the file.
 13. The method of claim 9, wherein authenticating the file includes utilizing security keys to authenticate the file.
 14. The method of claim 9, further comprising: determining a location of the gaming machine; and if the location is beyond an authorized location, clearing the memory of the gaming machine.
 15. The method of claim 9 wherein the file includes content selected from the group consisting of banner content, advertising content, denomination, pay table, language data, video content, audio content, episodic game data, wagering game software, operating system software, device driver software, and device firmware.
 16. A computer-readable medium having computer executable instructions for performing a method for managing software on a gaming machine, the method comprising: determining a location for a file server communicably coupled to a gaming machine, the gaming machine operable to present a wagering game upon which monetary value may be wagered; establishing an association between a mount point on a file system on the gaming machine and a directory on a remote file system on the file server; and loading a file located on the remote file system into a memory of the gaming machine.
 17. The computer-readable medium of claim 16, wherein establishing an association includes establishing an association using an NFS protocol.
 18. The computer-readable medium of claim 16, wherein establishing an association includes establishing an association using a Novell protocol.
 19. The computer-readable medium of claim 16, wherein the method further comprises authenticating the file located on the remote file system prior to loading the file.
 20. The computer-readable medium of claim 16, wherein authenticating the file includes utilizing security keys to authenticate the file.
 21. The computer-readable medium of claim 16, wherein the method further comprises: determining a location of the gaming machine; and if the location is beyond an authorized location then clearing the memory of the gaming machine.
 22. The computer-readable medium of claim 16, wherein the file includes content selected from the group consisting of banner content, advertising content, denomination, pay table, language data, video content, audio content, episodic game data, wagering game software, operating system software, device driver software, and device firmware. 